The TurboCAD runtime system consists of components of code packaged in a variety of modules.
Application
The main application file, TCW40.EXE, contains code that manages the user interface, handles linking and embedding of objects (traditional OLE), supports the states of user interface tools, and communicates with the graphics engine.
Graphics Engine
The graphics engine consists of three main modules, DBAPI40.DLL, TCAPI40.DLL, and IMSIGX40.DLL. DBAPI40 is the low level graphics engine which handles memory management, data storage, geometry, drawing and picking. TCAPI40.DLL is a higher-level API that wraps the low level engine with functionality that is exposed to the TurboCAD scripting system. Finally, IMSIGX40.DLL is the OLE Automation layer over the mid- and low- level graphics API's. IMSIGX40 contains the class factories that generate new objects and exposes the objects and their interfaces to the OLE Automation system. When the local (.EXE) server is running, TCW40.EXE actually delegates all OLE Automation requests to IMSIGX40.
Extensions
Extensions to the application and graphics engine components are packaged into DLL's located in subdirectories off the main program directory. TCW40.EXE and the graphics engine communicate with these extensions at start up and during file input and output, graphic editing, and user interaction. Extensions include: "regen methods", which provide logic for custom graphics ("Smart Objects"), located in the "Regens" subdirectory; file filters, which are used for file loading and storing, located in the "Filters" subdirectory; and tools, which support the creation and editing of graphics, as well as arbitrary functionality that can be added to TurboCAD, and which are located in the "Draggers" subdirectory.
Miscellaneous Functions
Other DLL's in the program directory handle a variety of housekeeping functions: property pages and other user interface elements are supported by PROPPG40.DLL and MSCROL40.DLL; and database queries are handled by TCDB.DLL.
SDK Top API Reference TurboCAD Home Page TurboCAD Programming Forums